// ## 5. call和apply有什么区别，哪个性能更好
Function.prototype.call = function(obj, ...arg) {
    const content = obj
    const fn = Symbol()
    content[fn] = this
    let result = content[fn]()
    delete content[fn]
    return result
}
function fn1(){
    console.log(1)
}
function fn2(){
    console.log(2)
}
fn1.call(fn2) // 1
fn1.call.call(fn2) // 2